trait Shape {
    fn area(&self) -> i64;
}

#[derive(Debug)]
struct Sqr {
    wid : i64,
    hig : i64,
}

impl Shape for Sqr {
    fn area(&self) -> i64 {
        self.hig * self.wid
    }
}
fn main() {
    println!("Hello, world!");
    let c = Sqr{
        wid : 10,
        hig : 36,
    };
    println!("{:#?}",c);
    println!("{}",c.area());
    println!("{}",Shape::area(c))
}
